簡單來說,就是瀏覽器內建的資料庫,可以根據需求存取資料。
如果想要查看Local Storage儲存了什麼資料,在Chrome中可以在開發者工具中的Application面板中,選取Storage收合列表下的Local Storage。
Local Storage的存取方式,是綁定網址的,所以只要用同一個瀏覽器,就算是用不同的分頁,一樣會有之前的資料。所以電商網站的最近瀏覽,就經常用這種方式來操作。
儲存在Local Storage內的資料可以清除,清除的方式大致上可以分為兩種:利用JavaScript或瀏覽器自帶的清除功能來清除。
打開Local Storage面板,可以發現,以網址作為分類,每個網址中有各自的Local Storage,而Local Storage中分為兩欄,分別是代表屬性的key,以及代表值的value。
要儲存資料到Local Storage需要提供兩個值,寫法如下:
localStorage.setItem(key, value);
實際操作後,可以發現資料已經存入Local Storage中:
var color = 'black';
localStorage.setItem('cat', color);
要從Local Storage中取出資料,只要提供資料在Local Storage中的key,就可以得到valeu,寫法如下:
localStorage.getItem(key);
所以根據上面的例子,想取值的話就必須這麼寫:
localStorage.getItem('cat');
因為Local Storage只能存字串,但是在資料傳輸時,物件是經常出現的資料型別,如果直接將陣儲存在Local Storage,資料會是物件型別(顯示Object
),這種情況下抓取資料時會顯示undefined。
所以資料存入Local Storage時,必須做過處理,將型別轉成字串後再做存入動作,抓取時,如果需要,可以將資料取出後再轉成物件型別做處理,這也是很多電商網站處理資料的方式。
轉換成string
JSON.stringfy();
轉換成array
JSON.parse();